home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / wwwboardpwd.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  83 lines

  1. #
  2. # This cgi abuse script was written by Jonathan Provencher
  3. # Ce script de scanning de cgi a ete ecrit par Jonathan Provencher
  4. # <druid@balistik.net>
  5. #
  6.  
  7.  
  8. if(description)
  9. {
  10.  script_id(10321);
  11.  script_bugtraq_id(649, 12453);
  12.  script_version ("$Revision: 1.14 $");
  13.  script_cve_id("CVE-1999-0953");
  14.  
  15.  name["english"] = "wwwboard passwd.txt";
  16.  name["francais"] = "wwwboard passwd.txt";
  17.  script_name(english:name["english"], francais:name["francais"]);
  18.  
  19.  desc["english"] = "
  20. The remote host is running wwwboard, a bulletin board system written
  21. by Matt Wright.
  22.  
  23. This board system comes with a password file (passwd.txt) installed
  24. next to the file 'wwwboard.html'.
  25.  
  26. An attacker may obtain the content of this file and decode the password
  27. to modify the remote www board.
  28.  
  29. Solution : Configure the wwwadmin.pl script to change the location of passwd.txt
  30. Risk factor : High";
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  script_description(english:desc["english"]);
  37.  
  38.  summary["english"] = "Checks for the presence of /wwwboard/passwd.txt";
  39.  summary["francais"] = "VΘrifie la prΘsence de /wwwboard/passwd.txt";
  40.  
  41.  script_summary(english:summary["english"], francais:summary["francais"]);
  42.  
  43.  script_category(ACT_GATHER_INFO);
  44.  
  45.  
  46.  script_copyright(english:"This script is Copyright (C) 1999 Jonathan Provencher",
  47.         francais:"Ce script est Copyright (C) 1999 Jonathan Provencher"
  48.     );    
  49.  
  50.  family["english"] = "CGI abuses";
  51.  family["francais"] = "Abus de CGI";
  52.  script_family(english:family["english"], francais:family["francais"]);
  53.      
  54.  
  55.  script_dependencie("find_service.nes", "no404.nasl");
  56.  script_require_ports("Services/www", 80);
  57.  exit(0);
  58. }
  59.  
  60. #
  61. # The script code starts here
  62. #
  63.  
  64. include("http_func.inc");
  65. include("http_keepalive.inc");
  66. port = get_http_port(default:80);
  67.  
  68. foreach dir(cgi_dirs())
  69. {
  70.  res = http_keepalive_send_recv(port:port, data:http_get(port:port, item:dir + "/wwwboard.html"));
  71.  if (res == NULL )exit(0);
  72.  if ( "wwwboard.pl" >< res )
  73.  {
  74.  res = http_keepalive_send_recv(port:port, data:http_get(port:port, item:dir + "/passwd.txt"), bodyonly:TRUE);
  75.  if ( strlen(res) && egrep(pattern:"^[A-Za-z0-9]*:[a-zA-Z0-9-_.]$", string:res))
  76.     {
  77.      security_hole(port);
  78.      exit(0);
  79.     }
  80.  }
  81. }
  82.  
  83.